home *** CD-ROM | disk | FTP | other *** search
- 10 REM OTHELLO
- 20 DIM X(99), A(88), XX(66), Y(8), Z(60), G(25), H(25), W(88), X1(25), X2(25), EV(25), X3(25), YY(25):fullw 2:clearw 2:gosub init:goto entry
- 30 CLRPRT: ht=106:wd=284:x=2:y=2:color 1,0,1,1,1:gosub pbox:gotoxy 1,1:return
- 40 PAUSE:?"Push either button."
- 42 gosub mouse:if key=0 goto 42
- 44 return
- 50 NUMGET: badnum=0:if y<11 and x>287 and x<575 then o=9:jp=9:return
- 60 if x<287 or x>575 or y>155 then badnum=1:return
- 70 o=int((y-11)/18+1):jp=int((x-287)/36+1):return
- 80 PBOX:'entry
- 90 poke contrl,11
- 100 poke contrl+2,2
- 110 poke contrl+6,0
- 120 poke contrl+10,1
- 130 poke ptsin,x
- 140 poke ptsin+2,y+20
- 150 poke ptsin+4,x+wd
- 160 poke ptsin+6,y+ht+20
- 170 vdisys(1)
- 180 return
- 190 MOUSE:a#=gb
- 200 gintout=peek(a#+12)
- 210 poke systab+24,1
- 220 poke contrl,122:poke contrl+2,0:poke contrl+6,1
- 230 poke intin,0:vdisys(1)
- 240 gemsys(79)
- 250 x=peek(gintout+2)
- 260 y=peek(gintout+4)-20
- 270 key=peek(gintout+6):poke systab+24,0:return
- 280 if key=2 then poke systab+24,0:return
- 290 if key=1 then poke systab+24,0:return
- 300 goto 240
- 310 ERRSOUND:sound 1,8,9,4,8:sound 1,0,0,0,0:return
- 320 ENTRY:INPUT "Play the computer (y or n)?", Z$
- 330 IF Z$ = "n" THEN U = -4: X(54) = -4: X(45) = -4: X(55) = 4: X(44) = 4: MOVES = MOVES-1: GOSUB 1180: GOTO 400
- 340 IF Z$ = "y" THEN U = 3: GOSUB 2970: MOVES = MOVES-1: GOTO 360
- 350 GOTO 320
- 360 UU = 0: VV = 0: FF = 0: INPUT "Will you go first?", X$: IF X$ <> "n" AND X$ <> "y" GOTO 360
- 370 IF X$ = "n" THEN gosub clrprt: PRINT "I always play red.": GOTO 390
- 380 GOSUB 1180: GOTO 400
- 390 X(54) = 2: X(55) = 1: X(44) = 1: X(45) = 2: GOSUB 1180: FOR DE = 1 TO 3000: NEXT DE: GOTO 780
- 400 soc=0:FF = FF+1: IF Z$ = "n" THEN U = -U
- 410 gosub clrprt:IF Z$ = "n" AND U = 4 THEN PRINT "Player #1 (green):"
- 420 IF Z$ = "n" AND U = -4 THEN PRINT "Player #2(red):"
- 430 PRINT "Your move."
- 440 gosub mouse:if key=0 goto 440
- 450 gosub numget:if badnum=1 goto 440
- 460 IF O < 1 OR O > 9 OR JP < 1 OR JP > 9 GOTO 450
- 470 A = 10*O+JP
- 480 IF A = 99 AND Z$ = "y" THEN XX(FF) = A: X1 = 1: GOTO 780
- 490 IF A = 99 AND Z$ = "n" AND U = 4 THEN XX(FF) = A: X = 1: GOTO 400
- 500 IF A = 99 AND Z$ = "n" AND U = -4 THEN XX(FF) = A: X1 = 1: GOTO 400
- 510 IF X(A) <> 0 THEN PRINT "square occupied ":gosub errsound:gosub pause: so=so+1:if so=1 then ff=ff-1
- 520 if x(a)<>0 then 410
- 530 XX(FF) = A: X1 = 0
- 540 IF Z$ = "n" GOTO 3000
- 550 R5 = 1: GOSUB 610: R5 = 0: GOTO 720
- 560 R5 = 0: B1 = 0: FOR R1 = 1 TO 60: A = Z(R1)
- 570 IF X(A) <> 0 GOTO 590
- 580 GOSUB 610
- 590 NEXT R1
- 600 X1(Z) = B1: GOTO 930
- 610 N = 0: FOR J = 1 TO 8: K = A+Y(J)
- 620 IF X(K) <> 1 GOTO 680
- 630 K = K + Y(J): IF X(K) = 1 THEN 630
- 640 IF X(K) <> 2 GOTO 680
- 650 K = K-Y(J): IF K = A GOTO 680
- 660 N = N+1: IF R5 = 1 THEN X(K) = 2: GOTO 650
- 670 GOTO 650
- 680 NEXT J
- 690 IF N > 0 OR N < B1 GOTO 710
- 700 B1 = N
- 710 RETURN
- 720 IF N > 0 GOTO 740
- 730 PRINT "Illegal move":gosub errsound:gosub pause:GOTO 410
- 740 IF Z$ = "y" THEN X(A) = 2: GOSUB 1180:gosub clrprt:?"I'm thinking."
- 750 IF Z$ = "n" THEN X(A) = U: GOSUB 1180
- 760 IF Z$ = "n" GOTO 400
- 770 REM COMPUTER MOVE
- 780 FF = FF+1: IF FF = 1 GOTO 1440
- 790 IF LL = 1 OR FF <= 14 GOTO 810
- 800 gosub evaluator: if ll>2 then gosub gambit
- 810 N1 = 0: G(1) = 0: R4 = 0: FOR R = 1 TO 60: A = Z(R): IF X(A) <> 0 GOTO 840
- 820 GOSUB 1000
- 830 IF G(1) <> 0 AND (FF <= 14 OR LL = 1) THEN R4 = 1: GOSUB 1000: GOTO 1140
- 840 NEXT R
- 850 IF G(1) = 0 GOTO 980
- 860 REM EVALUATOR
- 870 FOR Z = 1 TO N1
- 880 EV(Z) = A(G(Z))+60-YY(Z): NEXT Z: RR = EV(1): GG = YY(1)
- 890 REM SORT
- 900 FOR Z = 1 TO N1: IF EV(Z) <= RR GOTO 920
- 910 GG = YY(Z)
- 920 NEXT Z: A = Z(GG): R4 = 1: GOSUB 1000: GOTO 1140
- 930 gosub 1320
- 940 REM FLIP
- 950 FOR Z = 1 TO N1: IF X1(Z) = 0 THEN X1(Z) = .1
- 960 X3(Z) = X2(Z)/X1(Z): NEXT Z
- 970 GOSUB 1330: R4 = 1: GOSUB 1000: GOTO 1140
- 980 PRINT "Computer cannot move." : X = 1: XX(FF) = A:gosub pause: if x=1 and x1=1 goto 1220
- 990 GOTO 400
- 1000 N = 0: FOR J = 1 TO 8: K = A+Y(J)
- 1010 REM LEGAL MOVE?
- 1020 IF X(K) <> 2 GOTO 1090
- 1030 K = K+Y(J): IF X(K) = 2 THEN 1030
- 1040 IF X(K) <> 1 GOTO 1090
- 1050 K = K-Y(J): IF K = A GOTO 1090
- 1060 N = N+1: IF R4 = 1 THEN X(K) = 1
- 1070 IF R4 = 2 THEN X(K) = 1: V = V+1: X(V) = K
- 1080 GOTO 1050
- 1090 NEXT J
- 1100 IF R4 = 2 GOTO 1120
- 1110 IF N > 0 THEN N1 = N1+1: G(N1) = A: X2(N1) = N: YY(N1) = R
- 1120 RETURN
- 1130 REM COMPUTER PLAY
- 1140 S = INT(A/10): T = A-10*S+64: W$ = CHR$(T): JP = VAL(W$): V = 0: X(A) = 1
- 1150 JP = A-(S*10):gosub clrprt
- 1160 X = 0: XX(FF) = A: PRINT "I play at "; S; ","; JP: FOR J = 1 TO N1: H(J) = 0: G(J) = 0: X2(J) = 0: X3(J) = 0: X1(J) = 0: EV(J) = 0: YY(J) = 0: NEXT J
- 1170 gosub pause:GG = 0: GOSUB 1180: GOTO 400
- 1180 GOSUB boardup
- 1190 IF X = 1 AND X1 = 1 GOTO 1220
- 1200 RETURN
- 1210 REM END
- 1220 M = 0: N = 0: FOR K = 11 TO 88: IF X(K) = 1 OR X(K) = -4 THEN M = M+1
- 1230 IF X(K) = 2 OR X(K) = 4 THEN N = N+1
- 1240 NEXT K
- 1250 gosub clrprt:PRINT "Green="; N; " Red="; M
- 1260 IF Z$ = "n" GOTO 1300
- 1270 IF M = N THEN PRINT "We both played well and tied."
- 1280 IF M < N THEN PRINT "Congratulations. You have won."
- 1290 PRINT "Thank you for a fine game."
- 1300 INPUT "Would you like to play again?", RSP$: IF LEFT$(RSP$, 1) = "Y" OR LEFT$(RSP$, 1) = "y" then gosub init:goto 320
- 1310 END
- 1320 FOR R = 1 TO V: X(H(R)) = 2: NEXT R: X(S1) = 0: RETURN
- 1330 N = N1: D = 1
- 1340 D = D*2: IF D < N GOTO 1340
- 1350 D = INT((D-1)/2)
- 1360 IF D = 0 THEN A = G(1): RETURN
- 1370 it = N-D: FOR I = 1 TO it: J = I
- 1380 L = J+D
- 1390 IF X3(L) > X3(J) THEN T = X3(L): T1 = G(J): X3(J) = X3(L): G(J) = G(L): X3(L) = T: G(L) = T1: J = J-D: GOTO 1410
- 1400 GOTO 1420
- 1410 IF j > 0 GOTO 1380
- 1420 NEXT I: GOTO 1350
- 1430 REM OPENER
- 1440 SS = INT(1+RND(1)*4)
- 1450 IF SS = 1 THEN A = 35: X(45) = 1: GOTO 1140
- 1460 IF SS = 2 THEN A = 46: X(45) = 1: GOTO 1140
- 1470 IF SS = 3 THEN A = 53: X(54) = 1: GOTO 1140
- 1480 IF SS = 4 THEN A = 64: X(54) = 1: GOTO 1140
- 1490 EVALUATOR:
- 1500 A$ = "": B$ = "": C$ = "": D$ = "": FOR K = 11 TO 18: IF X(K) = 0 THEN A$ = A$+"0"
- 1510 IF X(K) = 1 THEN A$ = A$+"1"
- 1520 IF X(K) = 2 THEN A$ = A$+"2"
- 1530 IF X(K+70) = 0 THEN B$ = B$+"0"
- 1540 IF X(K+70) = 1 THEN B$ = B$+"1"
- 1550 IF X(K+70) = 2 THEN B$ = B$+"2"
- 1560 NEXT
- 1570 FOR K = 11 TO 81 STEP 10: IF X(K) = 0 THEN C$ = C$+"0"
- 1580 IF X(K) = 1 THEN C$ = C$+"1"
- 1590 IF X(K) = 2 THEN C$ = C$+"2"
- 1600 IF X(K+7) = 0 THEN D$ = D$+"0"
- 1610 IF X(K+7) = 1 THEN D$ = D$+"1"
- 1620 IF X(K+7) = 2 THEN D$ = D$+"2"
- 1630 REM UPDATER
- 1640 NEXT
- 1650 IF X(11) = 1 THEN A(12) = 20: A(21) = 20: A(22) = 20
- 1660 IF X(18) = 1 THEN A(17) = 20: A(27) = 20: A(28) = 20
- 1670 IF X(81) = 1 THEN A(71) = 20: A(72) = 20: A(82) = 20
- 1680 IF X(88) = 1 THEN A(77) = 20: A(78) = 20: A(87) = 20
- 1690 IF A$ = "00111100" OR A$ = "01111100" OR A$ = "00112200" OR A$ = "00111200" THEN A(17) = 24
- 1700 IF A$ = "00111100" OR A$ = "00111110" OR A$ = "00221100" OR A$ = "00222100" OR A$ = "00211100" THEN A(12) = 24
- 1710 IF B$ = "00111100" OR B$ = "01111100" OR B$ = "00112200" OR B$ = "00122200" OR B$ = "00111200" THEN A(87) = 24
- 1720 IF B$ = "00111100" OR B$ = "00111110" OR B$ = "00221100" OR B$ = "0022210" OR B$ = "00211100" THEN A(82) = 24
- 1730 IF C$ = "00111100" OR C$ = "01111100" OR C$ = "00112200" OR C$ = "00122200" OR C$ = "00111200" THEN A(71) = 24
- 1740 IF C$ = "00111100" OR C$ = "00111110" OR C$ = "00221100" OR C$ = "00222100" OR C$ = "00211100" THEN E(21) = 24
- 1750 IF D$ = "00111100" OR D$ = "01111100" OR D$ = "00112200" OR D$ = "00122200" OR D$ = "00111200" THEN A(78) = 24
- 1760 IF D$ = "00111100" OR D$ = "00111110" OR D$ = "00221100" OR D$ = "00222100" OR D$ = "00211100" THEN A(28) = 24
- 1770 IF A$ = "20111110" THEN A(12) = -64
- 1780 IF A$ = "01111102" THEN A(17) = -64
- 1790 IF B$ = "20222220" THEN A(82) = -64
- 1800 IF B$ = "01111102" THEN A(87) = -64
- 1810 IF C$ = "20111110" THEN A(21) = -64
- 1820 IF C$ = "01111102" THEN A(71) = -64
- 1830 IF D$ = "20111110" THEN A(28) = -64
- 1840 IF D$ = "01111102" THEN A(78) = -64
- 1850 IF A$ = "02220100" THEN A(15) = -32
- 1860 IF A$ = "00102220" THEN A(14) = -32
- 1870 IF B$ = "02220100" THEN A(85) = -32
- 1880 IF B$ = "00102220" THEN A(84) = -32
- 1890 IF C$ = "02220100" THEN A(51) = -32
- 1900 IF C$ = "00102220" THEN A(41) = -32
- 1910 IF D$ = "02220100" THEN A(58) = -32
- 1920 IF D$ = "00102220" THEN A(48) = -32
- 1930 IF LEFT$(A$,4) = "0102" THEN A(13) = -32
- 1940 IF RIGHT$(A$,4) = "2010" THEN A(16) = -32
- 1950 IF LEFT$(B$,4) = "0102" THEN A(83) = -32
- 1960 IF RIGHT$(B$,4) = "2010" THEN A(86) = -32
- 1970 IF LEFT$(C$,4) = "0102" THEN A(31) = -32
- 1980 IF RIGHT$(C$,4) = "2010" THEN A(61) = -32
- 1990 IF LEFT$(D$,4) = "0102" THEN A(38) = -32
- 2000 IF RIGHT$(D$,4) = "2010" THEN A(68) = -32
- 2010 IF A$ = "00002100" THEN A(14) = 24
- 2020 IF A$ = "00120000" THEN A(15) = 24
- 2030 IF B$ = "00002100" THEN A(84) = 24
- 2040 IF B$ = "00120000" THEN A(85) = 24
- 2050 IF C$ = "00002100" THEN A(41) = 24
- 2060 IF C$ = "00120000" THEN A(51) = 24
- 2070 IF D$ = "00002100" THEN A(48) = 24
- 2080 IF D$ = "00120000" THEN A(58) = 24
- 2090 IF A$ = "00001110" THEN A(14) = 24
- 2100 IF A$ = "01110000" THEN A(15) = 24
- 2110 IF B$ = "00001110" THEN A(84) = 24
- 2120 IF B$ = "01110000" THEN A(85) = 24
- 2130 IF C$ = "00001110" THEN A(41) = 24
- 2140 IF C$ = "01110000" THEN A(51) = 24
- 2150 IF D$ = "00001110" THEN A(48) = 24
- 2160 IF D$ = "01110000" THEN A(58) = 24
- 2170 IF A$ = "00210000" OR A$ = "00221000" OR A$ = "00211000" OR A$ = "00211110" THEN A(12) = 24
- 2180 IF A$ = "00001200" OR A$ = "00012200" OR A$ = "0011200" OR A$ = "01111200" THEN A(17) = 24
- 2190 IF B$ = "00210000" OR B$ = "00221000" OR B$ = "00211000" OR B$ = "00211110" THEN A(82) = 24
- 2200 IF B$ = "00001200" OR B$ = "00012200" OR B$ = "00011200" OR B$ = "01111200" THEN A(87) = 24
- 2210 IF C$ = "00210000" OR C$ = "00221000" OR C$ = "0021100" OR C$ = "00211110" THEN A(21) = 24
- 2220 IF C$ = "00001200" OR C$ = "00012200" OR C$ = "00011200" OR C$ = "01111200" THEN A(71) = 24
- 2230 IF D$ = "00210000" OR D$ = "00221000" OR D$ = "00211000" OR D$ = "02111100" THEN A(28) = 24
- 2240 IF D$ = "00001200" OR D$ = "00012200" OR D$ = "00011200" OR D$ = "01111200" THEN A(78) = 24
- 2250 IF A$ = "00022200" OR A$ = "00222200" THEN A(17) = -32
- 2260 IF A$ = "00222000" OR A$ = "00222200" THEN A(12) = -32
- 2270 IF B$ = "00022200" OR B$ = "00222200" THEN A(87) = -32
- 2280 IF B$ = "00222000" OR B$ = "00222200" THEN A(82) = -32
- 2290 IF C$ = "00022200" OR C$ = "00222200" THEN A(71) = -32
- 2300 IF C$ = "00222000" OR C$ = "00222200" THEN A(21) = -32
- 2310 IF D$ = "00022200" OR D$ = "00222200" THEN A(78) = -32
- 2320 IF D$ = "00222000" OR D$ = "00222200" THEN A(28) = -32
- 2330 IF A$ = "00200200" THEN A(14) = -2: E(15) = -2
- 2340 IF B$ = "00200200" THEN A(84) = -2: E(85) = -2
- 2350 IF C$ = "00200200" THEN A(41) = -2: E(51) = -2
- 2360 IF D$ = "00200200" THEN A(48) = -2: E(58) = -2
- 2370 IF A$ = "01110000" THEN A(16) = -32
- 2380 IF A$ = "00001110" THEN A(13) = -32
- 2390 IF B$ = "01110000" THEN A(86) = -32
- 2400 IF B$ = "00001110" THEN A(83) = -32
- 2410 IF C$ = "01110000" THEN a(83) = -32
- 2420 IF C$ = "00001110" THEN A(32) = -32
- 2430 IF D$ = "01110000" THEN A(68) = -21
- 2440 IF D$ = "00001110" THEN A(38) = -32
- 2450 IF A$ = "01110200" THEN a(15) = -32
- 2460 IF A$ = "01111020" OR A$ = "00111020" THEN a(16) = -32
- 2470 IF A$ = "00201110" THEN a(14) = -32
- 2480 IF A$ = "02011110" OR A$ = "02011100" THEN a(13) = -32
- 2490 IF B$ = "01110200" THEN a(85) = -32
- 2500 IF B$ = "01111020" OR B$ = "00111020" THEN a(86) = -32
- 2510 IF B$ = "00201110" THEN a(84) = -32
- 2520 IF B$ = "02011110" OR B$ = "02011100" THEN a(83) = -32
- 2530 IF C$ = "01110200" THEN a(51) = -32
- 2540 IF C$ = "01111020" OR C$ = "00111020" THEN a(61) = -32
- 2550 IF C$ = "00201110" THEN a(41) = -32
- 2560 IF C$ = "02011110" OR C$ = "02011100" THEN a(31) = -32
- 2570 IF D$ = "01110200" THEN a(58) = -32
- 2580 IF D$ = "01111020" OR D$ = "00111020" THEN a(68) = -32
- 2590 IF D$ = "00201110" THEN a(48) = -32
- 2600 IF D$ = "02011110" OR D$ = "02011100" THEN a(38) = -32
- 2610 IF A$ = "02222200" THEN a(17) = -96
- 2620 IF A$ = "00222220" THEN a(12) = -96
- 2630 IF B$ = "02222200" THEN a(87) = -96
- 2640 IF B$ = "00222220" THEN a(82) = -96
- 2650 IF C$ = "02222200" THEN a(71) = -96
- 2660 IF C$ = "00222220" THEN a(21) = -96
- 2670 IF D$ = "02222200" THEN a(78) = -96
- 2680 IF D$ = "00222220" THEN a(28) = -96
- 2690 return
- 2700 GAMBIT:
- 2710 IF A$ = "00222220" AND Z(31) <> 0 THEN a(22) = 24
- 2720 IF A$ = "20222220" THEN a(12) = 34
- 2730 IF A$ = "02222200" AND X(38) = 0 THEN a(27) = 24
- 2740 IF A$ = "02222202" THEN a(17) = 34
- 2750 IF B$ = "00222220" AND X(61) <> 0 THEN a(77) = 24
- 2760 IF B$ = "20222220" THEN a(82) = 34
- 2770 IF B$ = "02222200" AND X(68) = 0 THEN a(77) = 24
- 2780 IF B$ = "02222202" THEN a(87) = 34
- 2790 IF C$ = "00222220" AND X(13) <> 0 THEN a(22) = 24
- 2800 IF C$ = "20222220" THEN a(21) = 34
- 2810 IF C$ = "02222200" AND X(83) <> 0 THEN a(72) = 24
- 2820 IF C$ = "02222202" THEN a(71) = 34
- 2830 IF D$ = "00222220" AND X(16) <> 0 THEN a(27) = 24
- 2840 IF D$ = "20222220" THEN a(28) = 34
- 2850 IF D$ = "02222200" AND X(86) <> 0 THEN a(77) = 24
- 2860 IF D$ = "02222202" THEN a(78) = 34
- 2870 REM COMPUTER PROTECTS
- 2880 IF A$ = "00111110" OR C$ = "00111110" THEN a(11) = -96
- 2890 IF A$ = "01111100" OR D$ = "00111110" THEN a(18) = -96
- 2900 IF B$ = "00111110" OR C$ = "01111100" THEN a(81) = -96
- 2910 IF B$ = "01111100" OR D$ = "01111100" THEN a(88) = -96
- 2920 IF A$ = "01111110" THEN a(11) = 64: a(18) = 64
- 2930 IF B$ = "01111110" THEN a(81) = 64
- 2940 IF C$ = "01111110" THEN a(11) = 64
- 2950 IF D$ = "01111110" THEN a(18) = 64
- 2960 return
- 2970 INPUT "How hard should I think (1-4)";LL: IF LL <1 and l>4 then 2970
- 2980 RETURN
- 2990 REM 2PLAYERS
- 3000 N = 0: FOR J = 1 TO 8: K = A+Y(J)
- 3010 IF X(K) <> -U GOTO 3060
- 3020 K = K+Y(J): IF X(K) = -U THEN 3020
- 3030 IF X(K) <> U GOTO 3060
- 3040 K = K-Y(J): IF K = A GOTO 3060
- 3050 N = N + 1: X(K) = U: GOTO 3040
- 3060 NEXT J: X = 0: GOTO 720
- 3070 BOARDUP: x=287:y=11:q=0:ht=18:wd=36:pt=1:pt2=6
- 3080 for i=2 to 9:for j=2 to 9
- 3090 q=q+1:if x(q)=3 goto 3090
- 3100 if nbd=1 goto 3120
- 3110 swap pt,pt2:color 1,1,1,pt,2:gosub pbox
- 3120 if x(q)=1 or x(q)=-4 then color 1,2,2,1,1:pellipse x+17,y+7,15,7
- 3130 if x(q)=2 or x(q)=4 then color 1,3,3,1,1:pellipse x+17,y+7,15,7
- 3140 x=x+wd:next j
- 3150 swap pt,pt2:y=y+ht:x=x-(wd*8):next i
- 3160 nbd=1:moves=moves+1:if moves>59 goto 1220
- 3170 gotoxy 1,12:?"Board positions after":?moves;"moves.":return
- 3180 INIT:nbd=0:moves= -1:restore 3190:FOR L = 0 TO 99: READ X(L): NEXT
- 3190 data 3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,3,3,0,0,0,0,0,0,0,0,3,3,0,0,0,0,0,0,0,0,3,3,0,0,0,2,1,0,0,0,3,3,0,0,0
- 3200 data 1,2,0,0,0,3,3,0,0,0,0,0,0,0,0,3,3,0,0,0,0,0,0,0,0,3,3,0,0,0,0,0,0,0,0,3,3,3,3,3,3,3,3,3,3,3
- 3210 FOR L = 1 TO 8: READ Y(L): NEXT
- 3220 data -11,-10,-9,-1,1,9,10,11
- 3230 FOR L = 1 TO 60: READ Z(L): NEXT
- 3240 data 81,88,11,18,83,86,61,68,31,38,13,16,63,66,33,36,84,85
- 3250 data 51,58,41,48,14,15,64,65,53,56,43,46,34,35,74,75,52,57,42,47,24
- 3260 data 25,73,76,62,67,32,37,23,26,82,87,71,78,21,28,12,17,72,77,22,27
- 3270 FOR L = 11 TO 88: READ A(L): NEXT
- 3280 data 64,-32,32,16,16,32,-32,64,0,0,-32,-64,2,2,2,2,-64,-32,0,0,32,2,8,4,4,8,2,32,0,0,16,2,4,0,0
- 3290 data 4,2,16,0,0,16,2,4,0,0,4,2,16,0,0,32,2,8,4,4,8,2,32,0,0,-32,-64,2,2,2,2,-64,-32
- 3300 data 0,0,64,-32,32,16,16,32,-32,64
- 3310 X = 0: X1 = 0: GOSUB boardup
- 3320 ht=9:wd=288:x=287:y=2:color 1,1,1,1,1:gosub pbox:gotoxy 45,0:?"I PASS"
- 3330 return
- ə310 X = 0: X1 = 0: GOSUB boardup
- 3320 ht=9:wd=288:x=287:y=2: